package com.campus.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.campus.common.core.domain.AjaxResult;
import com.campus.pojos.domain.ClientComment;
import com.campus.pojos.domain.dto.CommentDto;
import com.campus.pojos.domain.dto.CommentQueryDto;
import com.campus.pojos.domain.vo.CommentVo;
import com.campus.result.Result;

import java.util.List;

public interface CommentService extends IService<ClientComment> {
    /**
     * 查询帖子评论
     * @param id
     * @return
     */
    Result<List<CommentVo>> getRoot(Integer id);

    /**
     * 删除帖子评论
     * @param id
     * @return
     */
    void deleteById(Integer id);

    /**
     * 添加评论
     * @param commentDto
     * @return
     */
    void add(CommentDto commentDto);

    /**
     * 获取子评论
     * @param rootId
     * @return
     */
    Result<List<CommentVo>> getSon(Integer rootId);

    /**
     * 评论条件查询
     * @param dto
     * @return
     */
    AjaxResult getList(CommentQueryDto dto);

    /**
     * 删除评论
     * @param id
     */
    void delete(Long id);
}
